package com.vtuzx.kingdee.xqc_core.dao;

import com.mongodb.client.result.UpdateResult;
import com.vtuzx.core.db.mongo.impl.VtuzxDaoImpl;
import org.bson.Document;
import org.bson.types.ObjectId;
import org.springframework.data.mongodb.core.query.Criteria;
import org.springframework.stereotype.Component;

@Component
public class PurContractDetailDao extends VtuzxDaoImpl {
    /** 集合名称 */
    public static final String NAME = "t_pur_contract_detail";

    public PurContractDetailDao() {
        super(NAME);
    }

    /**
     * 新建单据
     *
     * @param _userId 用户ID
     * @param userName 用户名
     * @param doc 数据
     * @return 单据ID
     */
    public ObjectId insert(ObjectId _userId, String userName, Document doc) {
        doc.append("_createUserId", _userId);
        doc.append("createUserName", userName);
        doc.append("_updateUserId", _userId);
        doc.append("updateUserName", userName);
        return insertOne(doc);
    }

    /**
     * 更新单据
     *
     * @param _userId 用户ID
     * @param userName 用户名
     * @param _id 分录ID
     * @param doc 数据
     * @return 单据ID
     */
    public UpdateResult update(ObjectId _userId, String userName, ObjectId _id, Document doc) {
        doc.append("_updateUserId", _userId);
        doc.append("updateUserName", userName);
        return updateById(_id, doc);
    }
}
